{
 "cells": [
  {
   "cell_type": "markdown",
   "id": "7461ecc9",
   "metadata": {},
   "source": [
    "## 本周学习内容\n",
    "### 1.课本项目直接运行\n",
    "### 2.认识变量\n",
    "### 3.赋值的概念\n",
    "### 4.python语言的基本数据结构：（文本、数值）"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "1300cc05",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "35"
      ]
     },
     "execution_count": 1,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# 回顾上周 模块.tab\n",
    "import datetime\n",
    "datetime.datetime.today().minute"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "5adf11f4",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "This minute seems a little odd.\n"
     ]
    }
   ],
   "source": [
    "# 1. 课本项目直接运行\n",
    "# 先找到模块，然后从模块中调用一个方法 ： from 模块名字 import 模块方法\n",
    "\n",
    "from datetime import datetime\n",
    "\n",
    "odds = [ 1, 3,  5,  7,  9, 11,13,15,17,19,\n",
    "            21,23,25,27,29,31,33,35,37,39,\n",
    "            41,43,45,47,49,51,53,55,57,59]\n",
    "\n",
    "right_this_minute = datetime.today().minute # 一直在变化的当前时间的  分钟数\n",
    "\n",
    "if right_this_minute in odds:\n",
    "    # if 语句的子程序 会自动空 Tab键的间隔，如果没有空，不符合语法规则\n",
    "    # if 语句子程序不能为空，也就是至少要有一行子程序，如果还不清楚要写的子程序，可以使用\n",
    "    # pass\n",
    "    print(\"This minute seems a little odd.\")\n",
    "else:\n",
    "    print(\"No an odd minute.\")"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "b18859de",
   "metadata": {},
   "source": [
    "* 变量的概念   \n",
    "1.变量用于存储要在计算机程序中引用和操作的信息。它们还提供了一种用描述性名称标记数据的方法，以便读者和我们自己能够更清楚地理解我们的程序。将变量看作包含信息的容器是有帮助的。它们的唯一目的是在内存中标记和存储数据。然后可以在整个程序中使用这些数据。        \n",
    "* 变量名称的规范      \n",
    "1. 变量名称只可以用 数字、字母和下划线来定义名称     \n",
    "2. 数字不可以作为变量名称的第一个字符 （stu10001）   \n",
    "3. 内部 （开发团队）已经使用过的名称不可以作为变量名，例如： \n",
    "4. 如果你是在想定义一个已经被用过名字： global_zhichao\\print_zhichao \n",
    "\n",
    "['and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'exec', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda','not', 'or', 'pass', 'print', 'raise', 'return', 'try', 'while', 'with', 'yield']"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "3b120171",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Jack\n"
     ]
    }
   ],
   "source": [
    "# 变量实践\n",
    "name = \"Jack\"\n",
    "print(name)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "id": "0fc5b179",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "XuZhichao\n"
     ]
    }
   ],
   "source": [
    "first_name = \"Xu\"\n",
    "last_name = \"Zhichao\"\n",
    "name = first_name+''+last_name\n",
    "print(name)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "id": "53eace0f",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Alex Alex\n",
      "Li,Alex Alex\n"
     ]
    }
   ],
   "source": [
    "# 变量实践3\n",
    "name_01 = \"Alex\"\n",
    "name_02 = name_01\n",
    "\n",
    "print(name_01,name_02)\n",
    "\n",
    "name_01 = \"Li,Alex\"\n",
    "\n",
    "print(name_01,name_02)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "id": "9822d6ca",
   "metadata": {},
   "outputs": [
    {
     "ename": "SyntaxError",
     "evalue": "invalid syntax (<ipython-input-7-16adc50103b2>, line 2)",
     "output_type": "error",
     "traceback": [
      "\u001b[1;36m  File \u001b[1;32m\"<ipython-input-7-16adc50103b2>\"\u001b[1;36m, line \u001b[1;32m2\u001b[0m\n\u001b[1;33m    <class 'str'>\u001b[0m\n\u001b[1;37m    ^\u001b[0m\n\u001b[1;31mSyntaxError\u001b[0m\u001b[1;31m:\u001b[0m invalid syntax\n"
     ]
    }
   ],
   "source": [
    "print(type(nmae_01))\n",
    "<class 'str'>"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "id": "688514e6",
   "metadata": {},
   "outputs": [],
   "source": [
    "# 以上结果原因：\n",
    "# python是一门解释性语言，是一行一行执行的，没有特定的要求，是不会运行上一行代码的"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "34159d42",
   "metadata": {},
   "source": [
    "* 已经完成上述的同学\n",
    ">> 阅读字符串概念   \n",
    "  1.字符串           \n",
    "  2.字符串方法          \n",
    "\n",
    ">> 阅读数值概念     \n",
    "  1.数值  \n",
    "  2.数值方法                             \n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "40f08b77",
   "metadata": {},
   "source": [
    "# 字符串"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "id": "ed4ed143",
   "metadata": {},
   "outputs": [
    {
     "ename": "SyntaxError",
     "evalue": "invalid syntax (<ipython-input-9-ff021dad870e>, line 2)",
     "output_type": "error",
     "traceback": [
      "\u001b[1;36m  File \u001b[1;32m\"<ipython-input-9-ff021dad870e>\"\u001b[1;36m, line \u001b[1;32m2\u001b[0m\n\u001b[1;33m    phrase = 'doesn't'#错误的使用\u001b[0m\n\u001b[1;37m                    ^\u001b[0m\n\u001b[1;31mSyntaxError\u001b[0m\u001b[1;31m:\u001b[0m invalid syntax\n"
     ]
    }
   ],
   "source": [
    "# invalid syntax 语法错误\n",
    "phrase = 'doesn't'#错误的使用\n",
    "phrase"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "id": "8f40b095",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "\"doesn't\""
      ]
     },
     "execution_count": 10,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "\"doesn't\" #解决方案1\n",
    "\"doesn\\'t\" #解决方案2\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "id": "21e10427",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "<div class=\"lin-header \">\n",
      "\t\t<div class=\"lin-head clearfix\">\n",
      "\t\t\t<h1 class=\"lin-topl\">\n",
      "\t\t\t\t<a href=\"index.htm\" target=\"_blank\" title=\"广州南方学院\">\n",
      "\t\t\t\t\t<img src=\"images/logo.png\">\n",
      "\t\t\t\t</a>\n",
      "\t\t\t</h1>\n",
      "\t\t\t<div class=\"lin-topr\">\n",
      "\t\t\t\t<div class=\"lin-youxiang\">\n",
      "\t\t\t\t\t<!--<a href=\"http://oa.nfu.edu.cn/\" target=\"_blank\">办公系统</a>-->\n",
      "\t\t\t\t\t<a href=\"xcyx/index.htm\">校长邮箱</a>\n",
      "\t\t\t\t\t<a href=\"http://en.nfu.edu.cn/\">English Version</a>\n",
      "\t\t\t\t\t\t<!-- <a href=\"https://mail.nfu.edu.cn/\" target=\"_blank\">邮箱登录</a>\n",
      "\t\t\t\t\t\t\t<a href=\"mailto:nfcsysuyz@126.com\" target=\"_blank\" title=\"nfcsysuyz@126.com\" >院长信箱</a> -->\n",
      "\t\t\t\t</div>\n",
      "\t\t\t\t<div class=\"lin-ser lin-serhide\">\n",
      "\t\t\t\t\t<div class=\"serbox\">\n",
      "\t\t\t\t\t\t<form action=\"/cms/web/search/index.jsp\" method=\"get\" id=\"search_form\">\n",
      "\t\t\t\t\t\t\t<input name=\"siteID\" value=\"bbef6bf928be491d9180b44993df0ac9\" type =\"hidden\"> \n",
      "\t\t\t\t\t\t\t<input type=\"text\" name=\"query\" id=\"keyword\" placeholder=\"搜索\">\n",
      "\t\t\t\t\t\t\t<a href=\"javascript:;\" id=\"search_btn\">\n",
      "\t\t\t\t\t\t\t</a>\n",
      "\t\t\t\t\t\t</form>\t\n",
      "\t\t\t\t\t\t<script type=\"text/javascript\">\n",
      "\t\t\t\t\t\t\t$(\"#search_btn\").click(function(){\n",
      "\t\t\t\t\t\t\t\tvar keyword=$(\"#keyword\").val();\n",
      "\t\t\t\t\t\t\t\tif(keyword==''){\n",
      "\t\t\t\t\t\t\t\t\talert('* 请输入搜索关键词 !');\n",
      "\t\t\t\t\t\t\t\t\t$(\"#keyword\").focus();\n",
      "\t\t\t\t\t\t\t\t\treturn false;\n",
      "\t\t\t\t\t\t\t\t}else{\n",
      "\t\t\t\t\t\t\t\t\t$(\"#search_form\").submit();\n",
      "\t\t\t\t\t\t\t\t}\n",
      "\t\t\t\t\t\t\t})\n",
      "\t\t\t\t\t\t</script>\n",
      "\t\t\t\t\t</div>\n",
      "\t\t\t\t\t\n",
      "\t\t\t\t</div>\n",
      "\t\t\t</div>\n",
      "\t\t</div>\n",
      "\t</div>\n",
      "\n"
     ]
    }
   ],
   "source": [
    "# 字符串 三引号 \"\"\"  \"\"\"或者'''  '''\n",
    "# 三引号可以储存较为复杂的文本数据（例如可以存 其他语言的 数据）\n",
    "广州南方学院官网_HTML = \"\"\"\n",
    "<div class=\"lin-header \">\n",
    "\t\t<div class=\"lin-head clearfix\">\n",
    "\t\t\t<h1 class=\"lin-topl\">\n",
    "\t\t\t\t<a href=\"index.htm\" target=\"_blank\" title=\"广州南方学院\">\n",
    "\t\t\t\t\t<img src=\"images/logo.png\">\n",
    "\t\t\t\t</a>\n",
    "\t\t\t</h1>\n",
    "\t\t\t<div class=\"lin-topr\">\n",
    "\t\t\t\t<div class=\"lin-youxiang\">\n",
    "\t\t\t\t\t<!--<a href=\"http://oa.nfu.edu.cn/\" target=\"_blank\">办公系统</a>-->\n",
    "\t\t\t\t\t<a href=\"xcyx/index.htm\">校长邮箱</a>\n",
    "\t\t\t\t\t<a href=\"http://en.nfu.edu.cn/\">English Version</a>\n",
    "\t\t\t\t\t\t<!-- <a href=\"https://mail.nfu.edu.cn/\" target=\"_blank\">邮箱登录</a>\n",
    "\t\t\t\t\t\t\t<a href=\"mailto:nfcsysuyz@126.com\" target=\"_blank\" title=\"nfcsysuyz@126.com\" >院长信箱</a> -->\n",
    "\t\t\t\t</div>\n",
    "\t\t\t\t<div class=\"lin-ser lin-serhide\">\n",
    "\t\t\t\t\t<div class=\"serbox\">\n",
    "\t\t\t\t\t\t<form action=\"/cms/web/search/index.jsp\" method=\"get\" id=\"search_form\">\n",
    "\t\t\t\t\t\t\t<input name=\"siteID\" value=\"bbef6bf928be491d9180b44993df0ac9\" type =\"hidden\"> \n",
    "\t\t\t\t\t\t\t<input type=\"text\" name=\"query\" id=\"keyword\" placeholder=\"搜索\">\n",
    "\t\t\t\t\t\t\t<a href=\"javascript:;\" id=\"search_btn\">\n",
    "\t\t\t\t\t\t\t</a>\n",
    "\t\t\t\t\t\t</form>\t\n",
    "\t\t\t\t\t\t<script type=\"text/javascript\">\n",
    "\t\t\t\t\t\t\t$(\"#search_btn\").click(function(){\n",
    "\t\t\t\t\t\t\t\tvar keyword=$(\"#keyword\").val();\n",
    "\t\t\t\t\t\t\t\tif(keyword==''){\n",
    "\t\t\t\t\t\t\t\t\talert('* 请输入搜索关键词 !');\n",
    "\t\t\t\t\t\t\t\t\t$(\"#keyword\").focus();\n",
    "\t\t\t\t\t\t\t\t\treturn false;\n",
    "\t\t\t\t\t\t\t\t}else{\n",
    "\t\t\t\t\t\t\t\t\t$(\"#search_form\").submit();\n",
    "\t\t\t\t\t\t\t\t}\n",
    "\t\t\t\t\t\t\t})\n",
    "\t\t\t\t\t\t</script>\n",
    "\t\t\t\t\t</div>\n",
    "\t\t\t\t\t\n",
    "\t\t\t\t</div>\n",
    "\t\t\t</div>\n",
    "\t\t</div>\n",
    "\t</div>\n",
    "\"\"\"\n",
    "print(广州南方学院官网_HTML)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "id": "5c907b77",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'\\n<div class=\"lin-header \">\\n\\t\\t<div class=\"lin-head clearfix\">\\n\\t\\t\\t<h1 class=\"lin-topl\">\\n\\t\\t\\t\\t<a href=\"index.htm\" target=\"_blank\" title=\"广州南方学院\">\\n\\t\\t\\t\\t\\t<img src=\"images/logo.png\">\\n\\t\\t\\t\\t</a>\\n\\t\\t\\t</h1>\\n\\t\\t\\t<div class=\"lin-topr\">\\n\\t\\t\\t\\t<div class=\"lin-youxiang\">\\n\\t\\t\\t\\t\\t<!--<a href=\"http://oa.nfu.edu.cn/\" target=\"_blank\">办公系统</a>-->\\n\\t\\t\\t\\t\\t<a href=\"xcyx/index.htm\">校长邮箱</a>\\n\\t\\t\\t\\t\\t<a href=\"http://en.nfu.edu.cn/\">English Version</a>\\n\\t\\t\\t\\t\\t\\t<!-- <a href=\"https://mail.nfu.edu.cn/\" target=\"_blank\">邮箱登录</a>\\n\\t\\t\\t\\t\\t\\t\\t<a href=\"mailto:nfcsysuyz@126.com\" target=\"_blank\" title=\"nfcsysuyz@126.com\" >院长信箱</a> -->\\n\\t\\t\\t\\t</div>\\n\\t\\t\\t\\t<div class=\"lin-ser lin-serhide\">\\n\\t\\t\\t\\t\\t<div class=\"serbox\">\\n\\t\\t\\t\\t\\t\\t<form action=\"/cms/web/search/index.jsp\" method=\"get\" id=\"search_form\">\\n\\t\\t\\t\\t\\t\\t\\t<input name=\"siteID\" value=\"bbef6bf928be491d9180b44993df0ac9\" type =\"hidden\"> \\n\\t\\t\\t\\t\\t\\t\\t<input type=\"text\" name=\"query\" id=\"keyword\" placeholder=\"搜索\">\\n\\t\\t\\t\\t\\t\\t\\t<a href=\"javascript:;\" id=\"search_btn\">\\n\\t\\t\\t\\t\\t\\t\\t</a>\\n\\t\\t\\t\\t\\t\\t</form>\\t\\n\\t\\t\\t\\t\\t\\t<script type=\"text/javascript\">\\n\\t\\t\\t\\t\\t\\t\\t$(\"#search_btn\").click(function(){\\n\\t\\t\\t\\t\\t\\t\\t\\tvar keyword=$(\"#keyword\").val();\\n\\t\\t\\t\\t\\t\\t\\t\\tif(keyword==\\'\\'){\\n\\t\\t\\t\\t\\t\\t\\t\\t\\talert(\\'* 请输入搜索关键词 !\\');\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t$(\"#keyword\").focus();\\n\\t\\t\\t\\t\\t\\t\\t\\t\\treturn false;\\n\\t\\t\\t\\t\\t\\t\\t\\t}else{\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t$(\"#search_form\").submit();\\n\\t\\t\\t\\t\\t\\t\\t\\t}\\n\\t\\t\\t\\t\\t\\t\\t})\\n\\t\\t\\t\\t\\t\\t</script>\\n\\t\\t\\t\\t\\t</div>\\n\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t</div>\\n\\t\\t\\t</div>\\n\\t\\t</div>\\n\\t</div>\\n'"
      ]
     },
     "execution_count": 12,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "广州南方学院官网_HTML"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "e5573cb8",
   "metadata": {},
   "source": [
    "* 字符串可以用+运算符连接（粘合在一起），并用 重复"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "id": "da7ae4ab",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "XuZhichao\n"
     ]
    }
   ],
   "source": [
    "# 字符串的拼接\n",
    "print(\"Xu\"+\"Zhichao\")"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "80d28356",
   "metadata": {},
   "source": [
    "* 字符串可以被索引（下标）"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "5fafcb44",
   "metadata": {},
   "source": [
    "请大家尝试写下 course_name[0] course_name[1]course_name[2]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "id": "13334d62",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'interactive-media-production'"
      ]
     },
     "execution_count": 14,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "course_name = \"interactive-media-production\"\n",
    "course_name"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "id": "8b2d2c3d",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "4"
      ]
     },
     "execution_count": 15,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "course_name.count(\"i\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "id": "bc532bac",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'i'"
      ]
     },
     "execution_count": 16,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "course_name[0]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "id": "39b7e9bc",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'media'"
      ]
     },
     "execution_count": 17,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "course_name[12] + course_name[13] + course_name[14] + course_name[15] + course_name[16]\n",
    "# 尝试取出 media"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "78c1fa3d",
   "metadata": {},
   "source": [
    "* 切片(slice)的性质：     \n",
    " 1.[值1：值2]值1<值2            \n",
    " 2.[值1：值2]值2 是取不到的    \n",
    "\n",
    " 后面还有请同学们先自己来尝试练习噢 自觉决定高度"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "13215913",
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.8.8"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
